package com.view;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

@ManagedBean
@ViewScoped
@SuppressWarnings("serial")
public class RemitoView implements Serializable {

	private Long id;
	private Date fechaRemito;
	private Long numeroRemito;
	private List<RemitoDetalleView> detalleRemitoView;
	private String estado;
	private Date fechaRecepcion;

	public RemitoView(Long id, Date fechaRemmito, Long numeroRemito,
			List<RemitoDetalleView> detalleRemitoView, String estado,
			Date fechaRecepcion) {
		this.id = id;
		this.fechaRemito = fechaRemmito;
		this.numeroRemito = numeroRemito;
		this.detalleRemitoView = detalleRemitoView;
		this.estado = estado;
		this.fechaRecepcion = fechaRecepcion;
	}

	public RemitoView() {
		this(null, null, null, new ArrayList<RemitoDetalleView>(), null, null);
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Date getFechaRemito() {
		return fechaRemito;
	}

	public void setFechaRemito(Date fechaRemito) {
		this.fechaRemito = fechaRemito;
	}

	public Long getNumeroRemito() {
		return numeroRemito;
	}

	public void setNumeroRemito(Long numeroRemito) {
		this.numeroRemito = numeroRemito;
	}

	public List<RemitoDetalleView> getDetalleRemitoView() {
		return detalleRemitoView;
	}

	public void setDetalleRemitoView(List<RemitoDetalleView> detalleRemitoView) {
		this.detalleRemitoView = detalleRemitoView;
	}

	public Double getTotalRemito() {
		Double retorno = 0D;

		if (this.detalleRemitoView != null) {
			for (RemitoDetalleView obj : this.detalleRemitoView) {
				retorno = retorno + obj.getCantidad();
			}
		}

		return retorno;
	}

	public String getEstado() {
		return estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}

	public Date getFechaRecepcion() {
		return fechaRecepcion;
	}

	public void setFechaRecepcion(Date fechaRecepcion) {
		this.fechaRecepcion = fechaRecepcion;
	}

}
